package dev.bong.service;

import dev.bong.dto.ScheduleDTO;
import dev.bong.dto.SemesterDTO;
import dev.bong.dto.UserDTO;
import dev.bong.dto.UserPageQueryDTO;
import dev.bong.pojo.entity.User;
import dev.bong.pojo.result.PageResult;
import dev.bong.vo.ApplyVo;
import dev.bong.vo.LabVo;
import dev.bong.vo.RegisterVO;
import dev.bong.vo.schedule.ScheduleVo;
import dev.bong.vo.SemesterVo;

import java.util.List;

public interface AdminService {


    String getCurrentSemester();
    List<SemesterVo> getSemesterList();


    void addSemester(SemesterDTO dto);

    void setCurrentSemester(Integer id);

    User findByUserAccount(String account);

    void register(UserDTO userDTO);

    void updateUser(UserDTO dto,Integer userId);

    PageResult pageQuery(UserPageQueryDTO dto);




    void deleteUser(List<Integer> ids);

    void resetPassword(List<Integer> ids,String password);

    List<ApplyVo> getBorrowList();

    void approvalBorrow(Integer applyId, Integer applyStatus);

    List<ScheduleVo> getScheduleList();

    List<RegisterVO> getRegisterList();

    void addSchedule(ScheduleDTO dto) throws Exception;

    List<LabVo> getLabList();
}
